<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
    <title>新增地址</title>
    <!--css style-->
    <link rel="stylesheet" href="css/base.css">
    <link rel="stylesheet" href="css/style.css">
    <link rel="stylesheet" href="css/font.css">
    <link rel="stylesheet" href="responsive/flexible.css">
    <script src="responsive/flexible.js"></script>
</head>
<body class="personal_center address edit add_addr">
    <header>
        <a href="javascript:void(0)" class="pre_page"></a>
        新增地址
    </header>

    <section class="main">

            <form action="" class="form_addr">
                <div class="add_list">
                    <ul class="container">
                        <li>
                            <span>收货人：</span><input type="text" placeholder="收货人姓名" id="name" name="name" onblur="checkConsigneeName(this)">
                        </li>
                        <li>
                            <span>手机号码：</span><input type="text" placeholder="请输入11位手机号码" name="telephone" id="telephone" onblur="checkTel(this)">
                        </li>
                        <li class="address">
                            <span>所在地址：</span>
                            <select name="province" id="s_province">
                                <option>请选择所在地区</option>
                            </select>
                        </li>
                        <li>
                            <span>详细地址：</span><input type="text" id="address" name="address" onblur="checkConsigneeAddress(this)"  placeholder="街道小区及门牌号A座2016室">
                        </li>
                        <li>
                            <span class="to_default">设为默认地址</span>
                            <input type="checkbox" value="" id="is_default" checked>
                            <label for="is_default" class="is_default"></label>
                        </li>
                    </ul>
                    <div class="clear"></div>
                </div>
                <input type="submit" value="保存收货地址" onclick="isAddressValid()">

            </form>

            <div class="mask add_edit_mask">
                <div class="prompt_box">
                    <h2>是否放弃修改地址信息?</h2>
                    <a href="javascript:void(0)" class="cancel">取消</a>
                    <a href="javascript:void(0)" class="confirm">确认</a>
                </div>
            </div>

    </section>


</body>
<script src="js/jquery.js"></script>
<script src="js/area.js"></script>
<script>_init_area(["s_province"],["选择所在地区"])</script>
<script>
    $(function () {
        
    });
    //阻止浏览器的默认行为
    function stopDefault( e ) {
        //阻止默认浏览器动作(W3C)
        if ( e && e.preventDefault )
            e.preventDefault();
        //IE中阻止函数器默认动作的方式
        else
            window.event.returnValue = false;
        return false;
    }
    /*检测收货人是否正确*/
    function checkConsigneeName(obj){
        obj.errorFlag = false;
        obj.errorMessage ="";
        var value = obj.value;
        if (checkEmpty(obj,"请您填写收货人姓名")) {
            obj.errorFlag = true;
            return obj.errorFlag;
        }else{
            if (value.length > 25) {
                obj.errorFlag = true;
                obj.errorMessage = "收货人姓名不能大于25位";
            }
            if (!is_forbid(value)) {
                obj.errorFlag = true;
                obj.errorMessage = "收货人姓名中含有非法字符";
            }
        }
        if(obj.errorFlag){
            alert(obj.errorMessage);
        }
        return obj.errorFlag;
    }

    /*校验手机号码*/
    function checkTel(obj){
        obj.errorFlag = false;
        if (checkEmpty(obj,'请您填写手机号码')) {
            obj.errorFlag = true;
            return  obj.errorFlag;
        }
        if(!(/^1[3|4|5|7|8]\d{9}$/.test(obj.value))){
            alert("输入手机号码不正确");
            obj.errorFlag = true;
        }
        return  obj.errorFlag;
    }
    /*检测是否为空*/
    function checkEmpty(obj,message){
        if(obj.value==''){
            alert(message);
            return true;
        }else{
            return false;
        }
    }
    /*验证地址*/
    function checkConsigneeAddress(obj){
        obj.errorFlag = false;
        obj.errorMessage = "";
        var value = $("#address").val();
        for(var i=0;i< $(".address select option:checked").length;i++){
            if($(".address select option:checked").eq(0).index()==0){
                alert("请选择所在地区");
                obj.errorFlag=true;
                return obj.errorFlag;

            }
        }

        if (checkEmpty(obj,'请您填写收货人详细地址')) {
            obj.errorFlag = true;
            return obj.errorFlag ;
        }
        if (value&&!is_forbid(value)) {
            obj.errorFlag = true;
            obj.errorMessage = "收货人详细地址中含有非法字符";
        }
        if (value&&value.length>50) {
            obj.errorFlag = true;
            obj.errorMessage = "收货人详细地址过长";
        }
        if(obj.errorFlag){
            alert(obj.errorMessage);
        }
        return obj.errorFlag;
    }

    /**
     * 检查是否含有非法字符
     * @param temp_str
     * @returns {Boolean}
     */
    function is_forbid(temp_str){
        temp_str = temp_str.replace(/(^\s*)|(\s*$)/g, "");
        temp_str = temp_str.replace('--',"@");
        temp_str = temp_str.replace('/',"@");
        temp_str = temp_str.replace('+',"@");
        temp_str = temp_str.replace('\'',"@");
        temp_str = temp_str.replace('\\',"@");
        temp_str = temp_str.replace('$',"@");
        temp_str = temp_str.replace('^',"@");
        temp_str = temp_str.replace('.',"@");
        temp_str = temp_str.replace(';',"@");
        temp_str = temp_str.replace('<',"@");
        temp_str = temp_str.replace('>',"@");
        temp_str = temp_str.replace('"',"@");
        temp_str = temp_str.replace('=',"@");
        temp_str = temp_str.replace('{',"@");
        temp_str = temp_str.replace('}',"@");
        var forbid_str = new String('@,%,~,&');
        var forbid_array = new Array();
        forbid_array = forbid_str.split(',');
        for(i=0;i<forbid_array.length;i++){
            if(temp_str.search(new RegExp(forbid_array[i])) != -1)
                return false;
        }
        return true;
    }
    /*检查地址信息是否合格*/
    function isAddressValid(addressId){
        var elConsigneeName=document.getElementById("name");
        var elAdrress=document.getElementById("address");
        var elTel=document.getElementById("telephone");
        if(checkConsigneeName(elConsigneeName)){
            $(".form_addr").submit(false);
            return;
        }
        if(checkTel(elTel)){
            $(".form_addr").submit(false);
            return;
        }
        if(checkConsigneeAddress(elAdrress)){
            $(".form_addr").submit(false);
            return;
        }



    }


</script>

</html>